package org.me.service;

import java.io.Serializable;
import java.util.List;
import org.me.entityBeans.TClientes;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;

public interface ClienteServiceHibernate {
   @Transactional(readOnly=false, propagation=Propagation.REQUIRED, rollbackFor=Exception.class) //solo lectura false ya que es de tipo update, required ya que crea transaccion y rollbackFor=Exception.class indica que todas las excepciones del método deben forzar un rolklback (applicationContext-data.xml)
   public void saveOrUpdateCliente(TClientes cliente); //Graba o actualiza un Cliente x su Id
  
   public String deleteCliente(TClientes cliente); //Borra un Pais x su Id
   public List<TClientes> findAllClientes(); //Trae todos los Clientes   
   public List<TClientes> findByNameCliente(String nomCliente); //Trae el Cliente que coincida con el nombre         
   public TClientes findByIdCliente(Serializable id); //Trae el Cliente que coincida con el id 
   public List<TClientes> findByDNICliente(Integer dni);//Trae el Cliente que coincida con el DNI
   public List<TClientes> findByRUCCliente(String ruc);//Trae el Cliente que coincida con el RUC
  
}
